package com.ityedao.递归;

import java.io.File;

public class DeleteDirectoryCase {
    public static void main(String[] args) {
        deleteDir(new File("F:\\A-IOtest"));
    }

    public static void deleteDir(File dir) {
        if (dir == null || !dir.exists()){
            return;
        }

        if (dir.isFile()){
            dir.delete();
            return;
        }

        // 1、dir存在且是文件夹，拿里面的一级文件对象
        File[] files = dir.listFiles();
        if (files == null){
            return;
        }
//        可删掉
//        if (files.length == 0){
//            dir.delete();
//            return;
//        }

        // 2、这是一个有内容的文件夹，干掉里面的内容，再干掉自己
        for (File file : files) {
            if (file.isFile()){
                file.delete();
            }else {
                deleteDir(file);
            }
        }
        dir.delete();
    }
}
